<head>
    <meta charset="UTF-8">
<title>算法提高 c++_ch04_02_修正版</title>
<link rel="stylesheet" href="../css/main.css">
</head>
 <p>﻿【﻿题目描述】</p>
<p>实现一个时间类Time。将小时，分钟和秒存储为int型成员变量。要求该类中包含一个构造函数，访问用的函数，一个推进当前时间的函数adv()，一个重新设置当前时间（即将当前时间设为00:00:00）的函数reset()和输出结果函数print()。注意时间按数字式电子表格式显示，即小时、分、秒分别用两位表示，如果其中之一小于10，则前方补0，如22:01:00（中间不含空格），另外按该格式依次输出时、分、秒后，以endl结尾。当输入时间超出合法范围（提示：注意上下界）时，请自动按照24小时制进行转换，请务必注意时分秒为负值时的处理，如输入25:00:61，则输出应为01:01:01，输入-1:-1:-1，应该输出22:58:59。<br />
第一步：依据题意定义Time类<br />
class Time<br />
{<br />
// 请补充<br />
};<br />
第二步：利用如下测试程序对所编写的Time类进行测试。<br />
int main()<br />
{<br />
// 当前时间<br />
int hour, minute, second;<br />
// 时间增量<br />
int incr_hr, incr_min, incr_sec;<br />
cin &gt;&gt; hour &gt;&gt; minute &gt;&gt; second &gt;&gt; incr_hr &gt;&gt; incr_min &gt;&gt; incr_sec;<br />
Time t( hour, minute, second );<br />
t.print();<br />
t.adv( incr_hr, incr_min, incr_sec );<br />
t.print();<br />
t.reset();<br />
t.print();<br />
return 0;<br />
}<br />
输入格式</p>
<p>输入一行，6个int类型数字，以空格间隔。</p>
<p>输出格式</p>
<p>输出三行时间，时间格式为24小时制，xx:xx:xx，英文标点，不足两位十位数补0。</p>
<p>第一行为初始时间，第二行为adv()后的时间，第三行为reset()后的时间</p>
<p>【示例1输入】<br />
0 0 0 0 0 -1<br />
<br />
【示例1输出】<br />
00:00:00<br />
23:59:59<br />
00:00:00<br />
示例3：<br />
<br />
【示例2输入】<br />
25 63 61 0 0 1<br />
<br />
【示例2输出】<br />
02:04:01<br />
02:04:02<br />
00:00:00<br />
<br />
【示例3输入】<br />
-50 -24 0 50 45 90<br />
【示例3输出】<br />
21:36:00<br />
00:22:30<br />
00:00:00<br />
&nbsp;</p>